package cn.lanqiao;

import java.util.Random;
import java.util.Scanner;


public class Lucky {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);


        String isContinue = null;
        String userName = null;
        String password = null;
        int cardNo = -1;
        boolean isLogin = false;

        do {
            System.out.println("1、注册");
            System.out.println("2、登录");
            System.out.println("3、抽奖");
            System.out.print("请输入选择：");
            String choose = input.next();
            switch (choose) {
                case "1":
                    //输入注册用户名和密码
                    System.out.println("抽奖 -> 注册");
                    System.out.println("请输入用户名：");
                    userName = input.next();
                    System.out.println("请输入密码：");
                    password = input.next();
                    //生成随机数

                    cardNo = getRandomNumber(4); // 0-9
                    //注册成功提示
                    System.out.println("用户名\t密码\t卡号");
                    System.out.println(userName + "\t" + password + "\t" + cardNo);
                    break;
                case "2":
                    //输入登录用户名和密码
                    System.out.println("抽奖 -> 登录");
                    System.out.println("请输入用户名：");
                    String name = input.next();
                    System.out.println("请输入密码：");
                    String pass = input.next();
                    //判断用户名和密码是否正确  "".equals(name)
                    if (name.equals(userName) && pass.equals(password)) {
                        System.out.println("欢迎您" + name);
                        isLogin = true;
                    } else {
                        System.out.println("对不起");
                    }
                    break;
                case "3":
                    System.out.println("抽奖 -> 抽奖");
                    //判断用户是否登录
                    if (!isLogin) {
                        System.out.println("请先登录！！！");
                        break;
                    }
                    //生成5个随机数
                    int cardNo1 = getRandomNumber(4);
                    int cardNo2 = getRandomNumber(4);
                    int cardNo3 = getRandomNumber(4);
                    int cardNo4 = getRandomNumber(4);
                    int cardNo5 = getRandomNumber(4);
                    //判断是否中奖
                    if (cardNo == cardNo1 || cardNo == cardNo2) {
                        System.out.println("恭喜你");
                    } else {
                        System.out.println("sorrry");
                    }
                    break;
                default:
                    System.out.println("选择错误！");
                    break;
            }
            System.out.println("是否继续？y/n");
            isContinue = input.next();
        } while (isContinue.equalsIgnoreCase("y"));
    }

    /**
     * 通过传入的参数，返回指定位数的随机数
     *
     * @param number 随机数的个数 例如：4位随机数 number = 4
     *
     * @return 返回指定个数的随机数
     *
     * @author david
     */

    public static int getRandomNumber(int number){
        Random random = new Random();
        return random.nextInt((int)Math.pow(10,number));
    }


//    public static int getRandomNumber(int number){
//        int i = (int)(Math.random()*10000); // 返回不是4位 ？ 方法递归
//        return i;
//    }
}
